package quartz;

import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.annotation.EnableScheduling;

/**
 * @see EnableScheduling 定时任务
 * https://docs.spring.io/spring-boot/docs/2.7.18/reference/htmlsingle/#io.quartz
 * https://docs.spring.io/spring-boot/docs/2.7.18/reference/htmlsingle/#features.task-execution-and-scheduling
 * @see EnableBatchProcessing 提供用于构建批处理作业的基本配置
 * https://docs.spring.io/spring-batch/docs/4.3.10/reference/html/index-single.html
 */
@EnableAsync
@EnableScheduling
@EnableBatchProcessing(modular = true)
@SpringBootApplication
public class QuartzBatchApplication {
    public static void main(String[] args) {
        SpringApplication.run(QuartzBatchApplication.class, args);
    }
}